<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Strict//EN">
<html>

<head>
<meta http-equiv="Content-Language" content="en-us">
<title>Enabling the B0-based remote API - server side</title>
<link rel="stylesheet" type="text/css" href="../style.css">
</head>

<body>

<div align="center">
<table class=allEncompassingTable >
 <tr>
  <td >
<p><a href="../index.html" TARGET="_top"><img src="images/homeImg.png"></a></p>



<h1>Enabling the B0-based remote API - server side</h1>

<p class=warningBox>The B&Oslash;-based remote API should not be mixed-up with the <a href="legacyRemoteApiOverview.htm">legacy remote API</a> (or simply <em>remote API</em>), which is an older version of the remote API that is less flexible, and more difficult to extend.</p>

<p>
The B0-based remote API server side is based on a Lua script: <a href="https://github.com/CoppeliaRobotics/lua/blob/master/b0RemoteApiServer.lua" target="_blank">lua/b0RemoteApiServer.lua</a>. That script, which makes heavy use of the <a href="blueZeroPlugin.htm">BlueZero interface</a> and <a href="b0Api.htm">its functions</a>, is being used in the <a href="customizationScripts.htm">customization script</a> of model <em>Models/tools/B0 remote Api server.ttm</em>, and in the <a href="addOns.htm">add-on script</a> <em>simAddOnScript-b0RemoteApiServer.lua</em>. Should you miss one particular function, then you can  implement it yourself into the remote API framework (see also the section on <a href="b0RemoteApiExtension.htm">extending the B0-based remote API</a>). </p>
<p>To enable the B0-based remote API on the server side (i.e. on CoppeliaSim's side), make sure the <a href="blueZeroPlugin.htm">BlueZero plugin</a> was successfully loaded at CoppeliaSim start-up (<em>simExtBlueZero.dll</em>, <em>libsimExtBlueZero.dylib</em> or <em>libsimExtBlueZero.so</em>) (you can inspect the console window for information related to plugin loading).</p>
<p>Finally, you have two possibilities in using the B0-based remote API:</p>

<li><strong>Start the add-on script<em>simAddOnScript-b0RemoteApiServer.lua</em></strong>: you can either manually start it in the menu bar [Add-ons --&gt; b0RemoteApiServer], or have it automatically started when CoppeliaSim launches (in that case, rename the add-on to <em>simAddOnScript_b0RemoteApiServer.lua</em>). The add-on script offers the B0-base remote API functionality for all the scenes without interruption.</li>
<li><strong>Drag-and drop the model <em>Models/tools/B0 remote Api server.ttm</em> into a specific scene</strong>: by doing so, the B0-based remote API functionality will become available for that particular scene only.</li>
<br>


<br>
<h3 class=recommendedTopics>Recommended topics</h3>
<li><a href="b0RemoteApiClientSide.htm">Enabling the B0-based remote API - client side</a></li>
<li><a href="b0RemoteApiOverview.htm">B0-based remote API overview</a></li>
<li><a href="b0RemoteApiModusOperandi.htm">B0-based remote API modus operandi</a></li>
<li><a href="b0RemoteApi-functionList.htm">B0-based remote API function list</a></li>
<br>
<br>
 </tr>
</table> 
</div>  
  
  
</body>

</html>